Using Decision Trees to Improve Program-Based and Profile-Based Static Branch Prediction
نویسندگان
چکیده
Improving static branch prediction accuracy is an important problem with various interesting applications. First, several compiler optimizations such as code layout, scheduling, predication, etc. rely on accurate static branch prediction. Second, branches that are statically accurately predictable can be removed from the dynamic branch predictor thereby reducing aliasing. Third, for embedded microprocessors which lack dynamic branch prediction, static branch prediction is the only alternative. This paper builds on previous work done on evidence-based static branch prediction which uses decision trees to classify branches. We demonstrate how decision trees can be used to improve the Ball and Larus heuristics by optimizing the sequence of applying the heuristics and by discovering two new heuristics, namely one based on the postdomination relationship between the current basic block and its successor and one based on the dependency distance between the branch and its operand defining instruction. Experimental results indicate an increase in the number of instructions per mispredicted branch by 18.5% on average for SPECint95 and SPECint2000. In addition, we show that decision trees can improve profile-based static branch prediction by up to 11.7% by predicting branches that are unseen in the profile runs.
منابع مشابه
Evaluation of liquefaction potential based on CPT results using C4.5 decision tree
The prediction of liquefaction potential of soil due to an earthquake is an essential task in Civil Engineering. The decision tree is a tree structure consisting of internal and terminal nodes which process the data to ultimately yield a classification. C4.5 is a known algorithm widely used to design decision trees. In this algorithm, a pruning process is carried out to solve the problem of the...
متن کاملSteel Buildings Damage Classification by damage spectrum and Decision Tree Algorithm
Results of damage prediction in buildings can be used as a useful tool for managing and decreasing seismic risk of earthquakes. In this study, damage spectrum and C4.5 decision tree algorithm were utilized for damage prediction in steel buildings during earthquakes. In order to prepare the damage spectrum, steel buildings were modeled as a single-degree-of-freedom (SDOF) system and time-history...
متن کاملPrediction of Surface in Machining by Flat and Spherical Surface Tools
In this paper, the profile of surfaces machined using end mills with flat and ball end tools in modeled. The real kinematics of the tool motion, the static deflection and the run out of the tool are included in the model. The cutting forces are calculated using a semi-empirical method based on orthogonal to oblique conversion of cutting coefficients. The thickness of the uncut chip is used as t...
متن کاملPREDICTION OF STATIC SOFTENING OF MICROALLOYED STEEL BY THE INTEGRATION OF FINITE ELEMENT MODEL WITH PHYSICALLY BASED STATE VARIABLE MODEL
Abstract Recovery and recrystallization phenomena and effects of microalloying elements on these phenomena are of great importance in designing thermomechanical processes of microalloyed steels. Thus, understanding and modeling of microstructure evolution during hot deformation leads to optimize the processing conditions and to improve the product properties. In this study, finite element...
متن کاملBMAT - A Binary Matching Tool for Stale Profile Propagation
A major challenge of applying profile-based optimization on large real-world applications is how to capture adequate profile information. A large program, especially a GUI-based application, may be used in a large variety of ways by different users on different machines. Extensive collection of profile data is necessary to fully characterize this type of program behavior. Unfortunately, in a re...
متن کامل